package com.vision.sales.cm.serv.rpc;

import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;
import com.sencha.gxt.data.shared.loader.PagingLoadResult;
import com.vision.core.cm.serv.rpc.AbstractServiceAsync;
import com.vision.sales.cl.ui.component.TransactionLoadConfig;
import com.vision.sales.cm.data.TransactionStatus;
import com.vision.sales.cm.db.data.Collection;
import com.vision.sales.cm.db.data.CollectionItem;

/**
 * @author Mark
 *
 */
public interface CollectionServiceAsync extends AbstractServiceAsync<Collection> {
	
	void getList(TransactionLoadConfig config, AsyncCallback<PagingLoadResult<Collection>> callback);
	
	void getCollections(TransactionStatus status, AsyncCallback<List<Collection>> callback);
	
	void getCollectionItems(long collectionId, AsyncCallback<List<CollectionItem>> callback);
	
	void postCollections(List<Collection> collecitons, AsyncCallback<List<Collection>> callback);
	
}
